package com.siyuanren.gcocp.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class WxCourseExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public WxCourseExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andAvailableIsNull() {
            addCriterion("available is null");
            return (Criteria) this;
        }

        public Criteria andAvailableIsNotNull() {
            addCriterion("available is not null");
            return (Criteria) this;
        }

        public Criteria andAvailableEqualTo(Boolean value) {
            addCriterion("available =", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotEqualTo(Boolean value) {
            addCriterion("available <>", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableGreaterThan(Boolean value) {
            addCriterion("available >", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableGreaterThanOrEqualTo(Boolean value) {
            addCriterion("available >=", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableLessThan(Boolean value) {
            addCriterion("available <", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableLessThanOrEqualTo(Boolean value) {
            addCriterion("available <=", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableIn(List<Boolean> values) {
            addCriterion("available in", values, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotIn(List<Boolean> values) {
            addCriterion("available not in", values, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableBetween(Boolean value1, Boolean value2) {
            addCriterion("available between", value1, value2, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotBetween(Boolean value1, Boolean value2) {
            addCriterion("available not between", value1, value2, "available");
            return (Criteria) this;
        }

        public Criteria andSortIsNull() {
            addCriterion("sort is null");
            return (Criteria) this;
        }

        public Criteria andSortIsNotNull() {
            addCriterion("sort is not null");
            return (Criteria) this;
        }

        public Criteria andSortEqualTo(Integer value) {
            addCriterion("sort =", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortNotEqualTo(Integer value) {
            addCriterion("sort <>", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortGreaterThan(Integer value) {
            addCriterion("sort >", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortGreaterThanOrEqualTo(Integer value) {
            addCriterion("sort >=", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortLessThan(Integer value) {
            addCriterion("sort <", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortLessThanOrEqualTo(Integer value) {
            addCriterion("sort <=", value, "sort");
            return (Criteria) this;
        }

        public Criteria andSortIn(List<Integer> values) {
            addCriterion("sort in", values, "sort");
            return (Criteria) this;
        }

        public Criteria andSortNotIn(List<Integer> values) {
            addCriterion("sort not in", values, "sort");
            return (Criteria) this;
        }

        public Criteria andSortBetween(Integer value1, Integer value2) {
            addCriterion("sort between", value1, value2, "sort");
            return (Criteria) this;
        }

        public Criteria andSortNotBetween(Integer value1, Integer value2) {
            addCriterion("sort not between", value1, value2, "sort");
            return (Criteria) this;
        }

        public Criteria andCourseNameIsNull() {
            addCriterion("course_name is null");
            return (Criteria) this;
        }

        public Criteria andCourseNameIsNotNull() {
            addCriterion("course_name is not null");
            return (Criteria) this;
        }

        public Criteria andCourseNameEqualTo(String value) {
            addCriterion("course_name =", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameNotEqualTo(String value) {
            addCriterion("course_name <>", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameGreaterThan(String value) {
            addCriterion("course_name >", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameGreaterThanOrEqualTo(String value) {
            addCriterion("course_name >=", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameLessThan(String value) {
            addCriterion("course_name <", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameLessThanOrEqualTo(String value) {
            addCriterion("course_name <=", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameLike(String value) {
            addCriterion("course_name like", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameNotLike(String value) {
            addCriterion("course_name not like", value, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameIn(List<String> values) {
            addCriterion("course_name in", values, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameNotIn(List<String> values) {
            addCriterion("course_name not in", values, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameBetween(String value1, String value2) {
            addCriterion("course_name between", value1, value2, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseNameNotBetween(String value1, String value2) {
            addCriterion("course_name not between", value1, value2, "courseName");
            return (Criteria) this;
        }

        public Criteria andCourseDescIsNull() {
            addCriterion("course_desc is null");
            return (Criteria) this;
        }

        public Criteria andCourseDescIsNotNull() {
            addCriterion("course_desc is not null");
            return (Criteria) this;
        }

        public Criteria andCourseDescEqualTo(String value) {
            addCriterion("course_desc =", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescNotEqualTo(String value) {
            addCriterion("course_desc <>", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescGreaterThan(String value) {
            addCriterion("course_desc >", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescGreaterThanOrEqualTo(String value) {
            addCriterion("course_desc >=", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescLessThan(String value) {
            addCriterion("course_desc <", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescLessThanOrEqualTo(String value) {
            addCriterion("course_desc <=", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescLike(String value) {
            addCriterion("course_desc like", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescNotLike(String value) {
            addCriterion("course_desc not like", value, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescIn(List<String> values) {
            addCriterion("course_desc in", values, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescNotIn(List<String> values) {
            addCriterion("course_desc not in", values, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescBetween(String value1, String value2) {
            addCriterion("course_desc between", value1, value2, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseDescNotBetween(String value1, String value2) {
            addCriterion("course_desc not between", value1, value2, "courseDesc");
            return (Criteria) this;
        }

        public Criteria andCourseImgIsNull() {
            addCriterion("course_img is null");
            return (Criteria) this;
        }

        public Criteria andCourseImgIsNotNull() {
            addCriterion("course_img is not null");
            return (Criteria) this;
        }

        public Criteria andCourseImgEqualTo(String value) {
            addCriterion("course_img =", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgNotEqualTo(String value) {
            addCriterion("course_img <>", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgGreaterThan(String value) {
            addCriterion("course_img >", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgGreaterThanOrEqualTo(String value) {
            addCriterion("course_img >=", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgLessThan(String value) {
            addCriterion("course_img <", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgLessThanOrEqualTo(String value) {
            addCriterion("course_img <=", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgLike(String value) {
            addCriterion("course_img like", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgNotLike(String value) {
            addCriterion("course_img not like", value, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgIn(List<String> values) {
            addCriterion("course_img in", values, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgNotIn(List<String> values) {
            addCriterion("course_img not in", values, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgBetween(String value1, String value2) {
            addCriterion("course_img between", value1, value2, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseImgNotBetween(String value1, String value2) {
            addCriterion("course_img not between", value1, value2, "courseImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgIsNull() {
            addCriterion("course_item_img is null");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgIsNotNull() {
            addCriterion("course_item_img is not null");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgEqualTo(String value) {
            addCriterion("course_item_img =", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgNotEqualTo(String value) {
            addCriterion("course_item_img <>", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgGreaterThan(String value) {
            addCriterion("course_item_img >", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgGreaterThanOrEqualTo(String value) {
            addCriterion("course_item_img >=", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgLessThan(String value) {
            addCriterion("course_item_img <", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgLessThanOrEqualTo(String value) {
            addCriterion("course_item_img <=", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgLike(String value) {
            addCriterion("course_item_img like", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgNotLike(String value) {
            addCriterion("course_item_img not like", value, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgIn(List<String> values) {
            addCriterion("course_item_img in", values, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgNotIn(List<String> values) {
            addCriterion("course_item_img not in", values, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgBetween(String value1, String value2) {
            addCriterion("course_item_img between", value1, value2, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseItemImgNotBetween(String value1, String value2) {
            addCriterion("course_item_img not between", value1, value2, "courseItemImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgIsNull() {
            addCriterion("course_banner_img is null");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgIsNotNull() {
            addCriterion("course_banner_img is not null");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgEqualTo(String value) {
            addCriterion("course_banner_img =", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgNotEqualTo(String value) {
            addCriterion("course_banner_img <>", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgGreaterThan(String value) {
            addCriterion("course_banner_img >", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgGreaterThanOrEqualTo(String value) {
            addCriterion("course_banner_img >=", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgLessThan(String value) {
            addCriterion("course_banner_img <", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgLessThanOrEqualTo(String value) {
            addCriterion("course_banner_img <=", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgLike(String value) {
            addCriterion("course_banner_img like", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgNotLike(String value) {
            addCriterion("course_banner_img not like", value, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgIn(List<String> values) {
            addCriterion("course_banner_img in", values, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgNotIn(List<String> values) {
            addCriterion("course_banner_img not in", values, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgBetween(String value1, String value2) {
            addCriterion("course_banner_img between", value1, value2, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseBannerImgNotBetween(String value1, String value2) {
            addCriterion("course_banner_img not between", value1, value2, "courseBannerImg");
            return (Criteria) this;
        }

        public Criteria andCourseFeeIsNull() {
            addCriterion("course_fee is null");
            return (Criteria) this;
        }

        public Criteria andCourseFeeIsNotNull() {
            addCriterion("course_fee is not null");
            return (Criteria) this;
        }

        public Criteria andCourseFeeEqualTo(Integer value) {
            addCriterion("course_fee =", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeNotEqualTo(Integer value) {
            addCriterion("course_fee <>", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeGreaterThan(Integer value) {
            addCriterion("course_fee >", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeGreaterThanOrEqualTo(Integer value) {
            addCriterion("course_fee >=", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeLessThan(Integer value) {
            addCriterion("course_fee <", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeLessThanOrEqualTo(Integer value) {
            addCriterion("course_fee <=", value, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeIn(List<Integer> values) {
            addCriterion("course_fee in", values, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeNotIn(List<Integer> values) {
            addCriterion("course_fee not in", values, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeBetween(Integer value1, Integer value2) {
            addCriterion("course_fee between", value1, value2, "courseFee");
            return (Criteria) this;
        }

        public Criteria andCourseFeeNotBetween(Integer value1, Integer value2) {
            addCriterion("course_fee not between", value1, value2, "courseFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeIsNull() {
            addCriterion("favourable_fee is null");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeIsNotNull() {
            addCriterion("favourable_fee is not null");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeEqualTo(Integer value) {
            addCriterion("favourable_fee =", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeNotEqualTo(Integer value) {
            addCriterion("favourable_fee <>", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeGreaterThan(Integer value) {
            addCriterion("favourable_fee >", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeGreaterThanOrEqualTo(Integer value) {
            addCriterion("favourable_fee >=", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeLessThan(Integer value) {
            addCriterion("favourable_fee <", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeLessThanOrEqualTo(Integer value) {
            addCriterion("favourable_fee <=", value, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeIn(List<Integer> values) {
            addCriterion("favourable_fee in", values, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeNotIn(List<Integer> values) {
            addCriterion("favourable_fee not in", values, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeBetween(Integer value1, Integer value2) {
            addCriterion("favourable_fee between", value1, value2, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andFavourableFeeNotBetween(Integer value1, Integer value2) {
            addCriterion("favourable_fee not between", value1, value2, "favourableFee");
            return (Criteria) this;
        }

        public Criteria andCourseScoreIsNull() {
            addCriterion("course_score is null");
            return (Criteria) this;
        }

        public Criteria andCourseScoreIsNotNull() {
            addCriterion("course_score is not null");
            return (Criteria) this;
        }

        public Criteria andCourseScoreEqualTo(Integer value) {
            addCriterion("course_score =", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreNotEqualTo(Integer value) {
            addCriterion("course_score <>", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreGreaterThan(Integer value) {
            addCriterion("course_score >", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreGreaterThanOrEqualTo(Integer value) {
            addCriterion("course_score >=", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreLessThan(Integer value) {
            addCriterion("course_score <", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreLessThanOrEqualTo(Integer value) {
            addCriterion("course_score <=", value, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreIn(List<Integer> values) {
            addCriterion("course_score in", values, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreNotIn(List<Integer> values) {
            addCriterion("course_score not in", values, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreBetween(Integer value1, Integer value2) {
            addCriterion("course_score between", value1, value2, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseScoreNotBetween(Integer value1, Integer value2) {
            addCriterion("course_score not between", value1, value2, "courseScore");
            return (Criteria) this;
        }

        public Criteria andCourseTypeIsNull() {
            addCriterion("course_type is null");
            return (Criteria) this;
        }

        public Criteria andCourseTypeIsNotNull() {
            addCriterion("course_type is not null");
            return (Criteria) this;
        }

        public Criteria andCourseTypeEqualTo(Integer value) {
            addCriterion("course_type =", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeNotEqualTo(Integer value) {
            addCriterion("course_type <>", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeGreaterThan(Integer value) {
            addCriterion("course_type >", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("course_type >=", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeLessThan(Integer value) {
            addCriterion("course_type <", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeLessThanOrEqualTo(Integer value) {
            addCriterion("course_type <=", value, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeIn(List<Integer> values) {
            addCriterion("course_type in", values, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeNotIn(List<Integer> values) {
            addCriterion("course_type not in", values, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeBetween(Integer value1, Integer value2) {
            addCriterion("course_type between", value1, value2, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("course_type not between", value1, value2, "courseType");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryIsNull() {
            addCriterion("course_category is null");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryIsNotNull() {
            addCriterion("course_category is not null");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryEqualTo(Integer value) {
            addCriterion("course_category =", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryNotEqualTo(Integer value) {
            addCriterion("course_category <>", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryGreaterThan(Integer value) {
            addCriterion("course_category >", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryGreaterThanOrEqualTo(Integer value) {
            addCriterion("course_category >=", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryLessThan(Integer value) {
            addCriterion("course_category <", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryLessThanOrEqualTo(Integer value) {
            addCriterion("course_category <=", value, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryIn(List<Integer> values) {
            addCriterion("course_category in", values, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryNotIn(List<Integer> values) {
            addCriterion("course_category not in", values, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryBetween(Integer value1, Integer value2) {
            addCriterion("course_category between", value1, value2, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andCourseCategoryNotBetween(Integer value1, Integer value2) {
            addCriterion("course_category not between", value1, value2, "courseCategory");
            return (Criteria) this;
        }

        public Criteria andTeacherIdIsNull() {
            addCriterion("teacher_id is null");
            return (Criteria) this;
        }

        public Criteria andTeacherIdIsNotNull() {
            addCriterion("teacher_id is not null");
            return (Criteria) this;
        }

        public Criteria andTeacherIdEqualTo(Integer value) {
            addCriterion("teacher_id =", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdNotEqualTo(Integer value) {
            addCriterion("teacher_id <>", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdGreaterThan(Integer value) {
            addCriterion("teacher_id >", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("teacher_id >=", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdLessThan(Integer value) {
            addCriterion("teacher_id <", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdLessThanOrEqualTo(Integer value) {
            addCriterion("teacher_id <=", value, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdIn(List<Integer> values) {
            addCriterion("teacher_id in", values, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdNotIn(List<Integer> values) {
            addCriterion("teacher_id not in", values, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdBetween(Integer value1, Integer value2) {
            addCriterion("teacher_id between", value1, value2, "teacherId");
            return (Criteria) this;
        }

        public Criteria andTeacherIdNotBetween(Integer value1, Integer value2) {
            addCriterion("teacher_id not between", value1, value2, "teacherId");
            return (Criteria) this;
        }

        public Criteria andGradeScoreIsNull() {
            addCriterion("grade_score is null");
            return (Criteria) this;
        }

        public Criteria andGradeScoreIsNotNull() {
            addCriterion("grade_score is not null");
            return (Criteria) this;
        }

        public Criteria andGradeScoreEqualTo(Integer value) {
            addCriterion("grade_score =", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreNotEqualTo(Integer value) {
            addCriterion("grade_score <>", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreGreaterThan(Integer value) {
            addCriterion("grade_score >", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreGreaterThanOrEqualTo(Integer value) {
            addCriterion("grade_score >=", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreLessThan(Integer value) {
            addCriterion("grade_score <", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreLessThanOrEqualTo(Integer value) {
            addCriterion("grade_score <=", value, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreIn(List<Integer> values) {
            addCriterion("grade_score in", values, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreNotIn(List<Integer> values) {
            addCriterion("grade_score not in", values, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreBetween(Integer value1, Integer value2) {
            addCriterion("grade_score between", value1, value2, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeScoreNotBetween(Integer value1, Integer value2) {
            addCriterion("grade_score not between", value1, value2, "gradeScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreIsNull() {
            addCriterion("grade_fine_score is null");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreIsNotNull() {
            addCriterion("grade_fine_score is not null");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreEqualTo(Integer value) {
            addCriterion("grade_fine_score =", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreNotEqualTo(Integer value) {
            addCriterion("grade_fine_score <>", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreGreaterThan(Integer value) {
            addCriterion("grade_fine_score >", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreGreaterThanOrEqualTo(Integer value) {
            addCriterion("grade_fine_score >=", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreLessThan(Integer value) {
            addCriterion("grade_fine_score <", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreLessThanOrEqualTo(Integer value) {
            addCriterion("grade_fine_score <=", value, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreIn(List<Integer> values) {
            addCriterion("grade_fine_score in", values, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreNotIn(List<Integer> values) {
            addCriterion("grade_fine_score not in", values, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreBetween(Integer value1, Integer value2) {
            addCriterion("grade_fine_score between", value1, value2, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andGradeFineScoreNotBetween(Integer value1, Integer value2) {
            addCriterion("grade_fine_score not between", value1, value2, "gradeFineScore");
            return (Criteria) this;
        }

        public Criteria andCourseTargetIsNull() {
            addCriterion("course_target is null");
            return (Criteria) this;
        }

        public Criteria andCourseTargetIsNotNull() {
            addCriterion("course_target is not null");
            return (Criteria) this;
        }

        public Criteria andCourseTargetEqualTo(String value) {
            addCriterion("course_target =", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetNotEqualTo(String value) {
            addCriterion("course_target <>", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetGreaterThan(String value) {
            addCriterion("course_target >", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetGreaterThanOrEqualTo(String value) {
            addCriterion("course_target >=", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetLessThan(String value) {
            addCriterion("course_target <", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetLessThanOrEqualTo(String value) {
            addCriterion("course_target <=", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetLike(String value) {
            addCriterion("course_target like", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetNotLike(String value) {
            addCriterion("course_target not like", value, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetIn(List<String> values) {
            addCriterion("course_target in", values, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetNotIn(List<String> values) {
            addCriterion("course_target not in", values, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetBetween(String value1, String value2) {
            addCriterion("course_target between", value1, value2, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andCourseTargetNotBetween(String value1, String value2) {
            addCriterion("course_target not between", value1, value2, "courseTarget");
            return (Criteria) this;
        }

        public Criteria andHotRecommendIsNull() {
            addCriterion("hot_recommend is null");
            return (Criteria) this;
        }

        public Criteria andHotRecommendIsNotNull() {
            addCriterion("hot_recommend is not null");
            return (Criteria) this;
        }

        public Criteria andHotRecommendEqualTo(Integer value) {
            addCriterion("hot_recommend =", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendNotEqualTo(Integer value) {
            addCriterion("hot_recommend <>", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendGreaterThan(Integer value) {
            addCriterion("hot_recommend >", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendGreaterThanOrEqualTo(Integer value) {
            addCriterion("hot_recommend >=", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendLessThan(Integer value) {
            addCriterion("hot_recommend <", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendLessThanOrEqualTo(Integer value) {
            addCriterion("hot_recommend <=", value, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendIn(List<Integer> values) {
            addCriterion("hot_recommend in", values, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendNotIn(List<Integer> values) {
            addCriterion("hot_recommend not in", values, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendBetween(Integer value1, Integer value2) {
            addCriterion("hot_recommend between", value1, value2, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andHotRecommendNotBetween(Integer value1, Integer value2) {
            addCriterion("hot_recommend not between", value1, value2, "hotRecommend");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdIsNull() {
            addCriterion("invite_voucher_id is null");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdIsNotNull() {
            addCriterion("invite_voucher_id is not null");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdEqualTo(Integer value) {
            addCriterion("invite_voucher_id =", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdNotEqualTo(Integer value) {
            addCriterion("invite_voucher_id <>", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdGreaterThan(Integer value) {
            addCriterion("invite_voucher_id >", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("invite_voucher_id >=", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdLessThan(Integer value) {
            addCriterion("invite_voucher_id <", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdLessThanOrEqualTo(Integer value) {
            addCriterion("invite_voucher_id <=", value, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdIn(List<Integer> values) {
            addCriterion("invite_voucher_id in", values, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdNotIn(List<Integer> values) {
            addCriterion("invite_voucher_id not in", values, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdBetween(Integer value1, Integer value2) {
            addCriterion("invite_voucher_id between", value1, value2, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andInviteVoucherIdNotBetween(Integer value1, Integer value2) {
            addCriterion("invite_voucher_id not between", value1, value2, "inviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdIsNull() {
            addCriterion("first_invite_voucher_id is null");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdIsNotNull() {
            addCriterion("first_invite_voucher_id is not null");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdEqualTo(Integer value) {
            addCriterion("first_invite_voucher_id =", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdNotEqualTo(Integer value) {
            addCriterion("first_invite_voucher_id <>", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdGreaterThan(Integer value) {
            addCriterion("first_invite_voucher_id >", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("first_invite_voucher_id >=", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdLessThan(Integer value) {
            addCriterion("first_invite_voucher_id <", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdLessThanOrEqualTo(Integer value) {
            addCriterion("first_invite_voucher_id <=", value, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdIn(List<Integer> values) {
            addCriterion("first_invite_voucher_id in", values, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdNotIn(List<Integer> values) {
            addCriterion("first_invite_voucher_id not in", values, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdBetween(Integer value1, Integer value2) {
            addCriterion("first_invite_voucher_id between", value1, value2, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andFirstInviteVoucherIdNotBetween(Integer value1, Integer value2) {
            addCriterion("first_invite_voucher_id not between", value1, value2, "firstInviteVoucherId");
            return (Criteria) this;
        }

        public Criteria andChapterCountIsNull() {
            addCriterion("chapter_count is null");
            return (Criteria) this;
        }

        public Criteria andChapterCountIsNotNull() {
            addCriterion("chapter_count is not null");
            return (Criteria) this;
        }

        public Criteria andChapterCountEqualTo(Integer value) {
            addCriterion("chapter_count =", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountNotEqualTo(Integer value) {
            addCriterion("chapter_count <>", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountGreaterThan(Integer value) {
            addCriterion("chapter_count >", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("chapter_count >=", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountLessThan(Integer value) {
            addCriterion("chapter_count <", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountLessThanOrEqualTo(Integer value) {
            addCriterion("chapter_count <=", value, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountIn(List<Integer> values) {
            addCriterion("chapter_count in", values, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountNotIn(List<Integer> values) {
            addCriterion("chapter_count not in", values, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountBetween(Integer value1, Integer value2) {
            addCriterion("chapter_count between", value1, value2, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andChapterCountNotBetween(Integer value1, Integer value2) {
            addCriterion("chapter_count not between", value1, value2, "chapterCount");
            return (Criteria) this;
        }

        public Criteria andTeachTypeIsNull() {
            addCriterion("teach_type is null");
            return (Criteria) this;
        }

        public Criteria andTeachTypeIsNotNull() {
            addCriterion("teach_type is not null");
            return (Criteria) this;
        }

        public Criteria andTeachTypeEqualTo(Integer value) {
            addCriterion("teach_type =", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeNotEqualTo(Integer value) {
            addCriterion("teach_type <>", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeGreaterThan(Integer value) {
            addCriterion("teach_type >", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("teach_type >=", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeLessThan(Integer value) {
            addCriterion("teach_type <", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeLessThanOrEqualTo(Integer value) {
            addCriterion("teach_type <=", value, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeIn(List<Integer> values) {
            addCriterion("teach_type in", values, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeNotIn(List<Integer> values) {
            addCriterion("teach_type not in", values, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeBetween(Integer value1, Integer value2) {
            addCriterion("teach_type between", value1, value2, "teachType");
            return (Criteria) this;
        }

        public Criteria andTeachTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("teach_type not between", value1, value2, "teachType");
            return (Criteria) this;
        }

        public Criteria andInviteImgIsNull() {
            addCriterion("invite_img is null");
            return (Criteria) this;
        }

        public Criteria andInviteImgIsNotNull() {
            addCriterion("invite_img is not null");
            return (Criteria) this;
        }

        public Criteria andInviteImgEqualTo(String value) {
            addCriterion("invite_img =", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgNotEqualTo(String value) {
            addCriterion("invite_img <>", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgGreaterThan(String value) {
            addCriterion("invite_img >", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgGreaterThanOrEqualTo(String value) {
            addCriterion("invite_img >=", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgLessThan(String value) {
            addCriterion("invite_img <", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgLessThanOrEqualTo(String value) {
            addCriterion("invite_img <=", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgLike(String value) {
            addCriterion("invite_img like", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgNotLike(String value) {
            addCriterion("invite_img not like", value, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgIn(List<String> values) {
            addCriterion("invite_img in", values, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgNotIn(List<String> values) {
            addCriterion("invite_img not in", values, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgBetween(String value1, String value2) {
            addCriterion("invite_img between", value1, value2, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteImgNotBetween(String value1, String value2) {
            addCriterion("invite_img not between", value1, value2, "inviteImg");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorIsNull() {
            addCriterion("invite_bg_color is null");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorIsNotNull() {
            addCriterion("invite_bg_color is not null");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorEqualTo(String value) {
            addCriterion("invite_bg_color =", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorNotEqualTo(String value) {
            addCriterion("invite_bg_color <>", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorGreaterThan(String value) {
            addCriterion("invite_bg_color >", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorGreaterThanOrEqualTo(String value) {
            addCriterion("invite_bg_color >=", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorLessThan(String value) {
            addCriterion("invite_bg_color <", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorLessThanOrEqualTo(String value) {
            addCriterion("invite_bg_color <=", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorLike(String value) {
            addCriterion("invite_bg_color like", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorNotLike(String value) {
            addCriterion("invite_bg_color not like", value, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorIn(List<String> values) {
            addCriterion("invite_bg_color in", values, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorNotIn(List<String> values) {
            addCriterion("invite_bg_color not in", values, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorBetween(String value1, String value2) {
            addCriterion("invite_bg_color between", value1, value2, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andInviteBgColorNotBetween(String value1, String value2) {
            addCriterion("invite_bg_color not between", value1, value2, "inviteBgColor");
            return (Criteria) this;
        }

        public Criteria andActiveIdIsNull() {
            addCriterion("active_id is null");
            return (Criteria) this;
        }

        public Criteria andActiveIdIsNotNull() {
            addCriterion("active_id is not null");
            return (Criteria) this;
        }

        public Criteria andActiveIdEqualTo(Integer value) {
            addCriterion("active_id =", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdNotEqualTo(Integer value) {
            addCriterion("active_id <>", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdGreaterThan(Integer value) {
            addCriterion("active_id >", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("active_id >=", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdLessThan(Integer value) {
            addCriterion("active_id <", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdLessThanOrEqualTo(Integer value) {
            addCriterion("active_id <=", value, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdIn(List<Integer> values) {
            addCriterion("active_id in", values, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdNotIn(List<Integer> values) {
            addCriterion("active_id not in", values, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdBetween(Integer value1, Integer value2) {
            addCriterion("active_id between", value1, value2, "activeId");
            return (Criteria) this;
        }

        public Criteria andActiveIdNotBetween(Integer value1, Integer value2) {
            addCriterion("active_id not between", value1, value2, "activeId");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountIsNull() {
            addCriterion("init_order_count is null");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountIsNotNull() {
            addCriterion("init_order_count is not null");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountEqualTo(Integer value) {
            addCriterion("init_order_count =", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountNotEqualTo(Integer value) {
            addCriterion("init_order_count <>", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountGreaterThan(Integer value) {
            addCriterion("init_order_count >", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("init_order_count >=", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountLessThan(Integer value) {
            addCriterion("init_order_count <", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountLessThanOrEqualTo(Integer value) {
            addCriterion("init_order_count <=", value, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountIn(List<Integer> values) {
            addCriterion("init_order_count in", values, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountNotIn(List<Integer> values) {
            addCriterion("init_order_count not in", values, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountBetween(Integer value1, Integer value2) {
            addCriterion("init_order_count between", value1, value2, "initOrderCount");
            return (Criteria) this;
        }

        public Criteria andInitOrderCountNotBetween(Integer value1, Integer value2) {
            addCriterion("init_order_count not between", value1, value2, "initOrderCount");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}